//获取应用实例(获取app.js全局变量必须获取应用实例)
const App = getApp()

//网络请求封装
import Request_post from "../../request/Request_post"
import Request_get from "../../request/Request_get"

//小程序配置
import config from '../../config/config'; 

// 获取微信扫一扫URL中的参数 https://www.mp.kmabacus.com/coupon?id=123&des=abc :   获取 123 及 abc
let utils = require("../../utils/CustomFunction/getQueryString.js")


// 引入小程序页面详情数组
import MiniPages from "../../config/MiniProgramPages"



Page({
  /**
   * 页面的初始数据
   */
  data: {

    //扫码领券规则单号初始化
    rulechbllno:"",

    //跳转页面
    jumpPageA:"/SubpkgMemberbiz/pages/Member/InfoInput/InfoInput",
    
  },
   

  /**
   * 本页面逻辑：
   * 1、本页面是小程序首先进入的页面
   *    1-1.有一种特殊情况：即小程序后台配置了[扫普通链接二维码打开小程序]即：扫码领券通过微信扫一扫直接进入小程序后，这时先进入：index并携带二维码规则单号rulechbllno，在index中跳转到其他页面，rulechbllno这个参数则一直携带并传递到各个相关的跳转页面。
   * 2、进入页面后，首先获取用户的wxopenid
   * 3、请求04-001 会员查询接口：使用wxopenid 查询是否是会员，如果查询成功，则进入首页，如果查询失败则进入注册绑定页面
   */

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var that=this

    //特殊的第一步：index页面接收微信扫一扫，进入本页面传递过来的参数，同时将rulechbllno参数传递至相关页面，最终到Markeing_HomePages页面进行”扫码领取“的实现
    //截取参数  options.q ='域名地址?rulechbllno=12345678&copcltid=001';
    let q = decodeURIComponent(options.q);
    //需要获取的参数值
    if (options.q){
      // console.log(options)
      var rulechbllno = utils.getQueryString(q,'rulechbllno');
      var copcltid = utils.getQueryString(q,'echcltid');
      App.globalData.rulechbllno = rulechbllno //'微信扫一扫获取的规则单号
      App.globalData.copcltid = copcltid //'微信扫一扫获取的发券商服ID

      console.log(App.globalData.rulechbllno,App.globalData.copcltid)
    }


    
    getApp().loginPromise.then(v => {
      /** Api请求 基础信息查询-wxmkt_baseinfo-001-注册信息查询 **/
      Request_get.get( 
        config.domainName+"api_wxmkt_baseinfo/sysregs",
        {},
        function(res){
          // console.log('baseinfo-001-注册信息查询',res)
          if(res != "undefined" && res.return_no == 1){
            // console.log('baseinfo-001-注册信息查询',res)
            wx.setStorageSync('StrSysreginfo',res.return_data)
            /** Api请求 基础信息查询-wxmkt_baseinfo-002-系统设置查询 **/
            Request_get.get( 
              config.domainName+"api_wxmkt_baseinfo/sysopts",
              {},
              function(res){
                // console.log('baseinfo-002-系统设置查询',res)
                if(res != "undefined" && res.return_no == 1){
                  wx.setStorageSync('StrSysoption',res.return_data)
                  App.globalData.isCpsMbrInfo_input = wx.getStorageSync('StrSysoption').wxmbrregfociptinfo
                  App.globalData.ResourcesLink_Locstr = wx.getStorageSync('StrSysoption').wxmktcachesrcimg
                  App.globalData.Erpimage_Locstr = wx.getStorageSync('StrSysoption').wxmktcachesysimg

                  that.mbrIdentityLegalityCheck();
                }
              }
            )

          }
        }
      )

    })

  },



  // 跳转的页面
  wx_redirectTo:function(){
    if(App.globalData.Scenepath === '/pages/index/index'){
      wx.redirectTo({
        url:App.globalData.homePage
      });
    }else if(App.globalData.Scenepath !== '/pages/index/index'){
      wx.redirectTo({
        url:App.globalData.Scenepath+App.globalData.Scenepath_parameter
      });
    }
  },



  // 会员身份二次验证 && 相关逻辑判断方法--被调用：( 会员资料是否录入、登录的会员相关资料是否完善，不完善的进入资料录入页面，会员不存在的则进入带授权提示的主页面)
  mbrIdentityLegalityCheck:function(){
    var that = this
    var mbr_info = wx.getStorageSync('StrMbrInfo')
    wx.showLoading({
      title: '加载中',
    })

    if(App.globalData.regflg == 'y'){       // app.js：会员查询成功的，则regflg == 'y' 否则 regflg == 'n'
      //需要强制录入个人信息的
      if(App.globalData.isCpsMbrInfo_input =='y' ){		
        // console.log('需要强制录入个人信息')
        // 个人信息未录入：则跳转至个人信息录入页面
        if(mbr_info.name == config.name || mbr_info.birthday == "0000-00-00" || mbr_info.sex == config.sex){ 
          console.log('强制录入个人信息的 同时 个人信息未录入的 —— 跳转至个人信息录入页面') 
          wx.redirectTo({ 
            url:that.data.jumpPageA
          });
        }else{  // 个人信息已录入：则跳转至小程序的进入场景页面（app.js获取）
          // console.log('强制录入个人信息的 同时 个人信息已经录入完整的 —— 跳转至小程序的进入场景页面（app.js获取）')
          that.wx_redirectTo();
        }
      }else{		//不需要强制录入的 —— 跳转至小程序的进入场景页面（app.js获取）
        // console.log('不强制录入个人信息的 —— 跳转至小程序的进入场景页面（app.js获取）')
        that.wx_redirectTo();
      }
    }else{
      that.Querymbrinfo();
    }  
    
  },
 



  /** 会员信息查询方法 （被调用） */
  Querymbrinfo:function(){
    var that = this
    /** Api mktapi服务：04-001会员信息查询（验证已绑定） */
    Request_get.get(
      config.domainName+"api_wxmkt_server/mbrreg/findwxmbr",
      {
        appid: config.as_appid,
        appuserid: App.globalData.wx_openid,
        unionid: App.globalData.unionid,
      }, 
      function(res){
        if(res != 'undefined' && res.return_no == 1){        //会员查询成功
          wx.setStorageSync('StrMbrInfo', res.return_data)
          App.globalData.mbrid = res.return_data.mbrid
          App.globalData.mbrclsid = res.return_data.mbrclsid
          App.globalData.mbl = res.return_data.mbl
          App.globalData.regflg = 'y'
        }else{ //会员不存在 或 微信Openid未绑定线下会员
          that.wx_redirectTo();
        }
      }
    )
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
  

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
  
  },

 

  //小程序外联地址
  // gobaidu:function(){
  //   wx.navigateTo({
  //    url:'../Test/urllinks/urllinks', //
  //    success:function() {
  //    },  //成功后的回调；
  //    fail:function() { },   //失败后的回调；
  //    complete:function() { }  //结束后的回调(成功，失败都会执行)
  //   })
  // },


  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
    
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
    
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    
  },





})


